// vite.config.js
import { defineConfig, loadEnv } from "file:///D:/zzylfile/%E4%B8%AD%E5%B7%9E%E5%85%BB%E8%80%81%E8%AF%BE%E7%A8%8B%E8%B5%84%E6%96%99/03.%20%E9%A1%B9%E7%9B%AE%E6%90%AD%E5%BB%BA%E3%80%81%E4%BB%8E0%E5%BC%80%E5%A7%8B%E7%94%A8%E8%8B%A5%E4%BE%9D/%E8%B5%84%E6%96%99/%E4%B8%8B%E8%BD%BD%E5%A5%BD%E4%BE%9D%E8%B5%96%E7%9A%84%E5%89%8D%E7%AB%AF%E9%A1%B9%E7%9B%AE/zzyl-vue3/node_modules/vite/dist/node/index.js";
import path2 from "path";

// vite/plugins/index.js
import vue from "file:///D:/zzylfile/%E4%B8%AD%E5%B7%9E%E5%85%BB%E8%80%81%E8%AF%BE%E7%A8%8B%E8%B5%84%E6%96%99/03.%20%E9%A1%B9%E7%9B%AE%E6%90%AD%E5%BB%BA%E3%80%81%E4%BB%8E0%E5%BC%80%E5%A7%8B%E7%94%A8%E8%8B%A5%E4%BE%9D/%E8%B5%84%E6%96%99/%E4%B8%8B%E8%BD%BD%E5%A5%BD%E4%BE%9D%E8%B5%96%E7%9A%84%E5%89%8D%E7%AB%AF%E9%A1%B9%E7%9B%AE/zzyl-vue3/node_modules/@vitejs/plugin-vue/dist/index.mjs";

// vite/plugins/auto-import.js
import autoImport from "file:///D:/zzylfile/%E4%B8%AD%E5%B7%9E%E5%85%BB%E8%80%81%E8%AF%BE%E7%A8%8B%E8%B5%84%E6%96%99/03.%20%E9%A1%B9%E7%9B%AE%E6%90%AD%E5%BB%BA%E3%80%81%E4%BB%8E0%E5%BC%80%E5%A7%8B%E7%94%A8%E8%8B%A5%E4%BE%9D/%E8%B5%84%E6%96%99/%E4%B8%8B%E8%BD%BD%E5%A5%BD%E4%BE%9D%E8%B5%96%E7%9A%84%E5%89%8D%E7%AB%AF%E9%A1%B9%E7%9B%AE/zzyl-vue3/node_modules/unplugin-auto-import/dist/vite.js";
function createAutoImport() {
  return autoImport({
    imports: [
      "vue",
      "vue-router",
      "pinia"
    ],
    dts: false
  });
}

// vite/plugins/svg-icon.js
import { createSvgIconsPlugin } from "file:///D:/zzylfile/%E4%B8%AD%E5%B7%9E%E5%85%BB%E8%80%81%E8%AF%BE%E7%A8%8B%E8%B5%84%E6%96%99/03.%20%E9%A1%B9%E7%9B%AE%E6%90%AD%E5%BB%BA%E3%80%81%E4%BB%8E0%E5%BC%80%E5%A7%8B%E7%94%A8%E8%8B%A5%E4%BE%9D/%E8%B5%84%E6%96%99/%E4%B8%8B%E8%BD%BD%E5%A5%BD%E4%BE%9D%E8%B5%96%E7%9A%84%E5%89%8D%E7%AB%AF%E9%A1%B9%E7%9B%AE/zzyl-vue3/node_modules/vite-plugin-svg-icons/dist/index.mjs";
import path from "path";
function createSvgIcon(isBuild) {
  return createSvgIconsPlugin({
    iconDirs: [path.resolve(process.cwd(), "src/assets/icons/svg")],
    symbolId: "icon-[dir]-[name]",
    svgoOptions: isBuild
  });
}

// vite/plugins/compression.js
import compression from "file:///D:/zzylfile/%E4%B8%AD%E5%B7%9E%E5%85%BB%E8%80%81%E8%AF%BE%E7%A8%8B%E8%B5%84%E6%96%99/03.%20%E9%A1%B9%E7%9B%AE%E6%90%AD%E5%BB%BA%E3%80%81%E4%BB%8E0%E5%BC%80%E5%A7%8B%E7%94%A8%E8%8B%A5%E4%BE%9D/%E8%B5%84%E6%96%99/%E4%B8%8B%E8%BD%BD%E5%A5%BD%E4%BE%9D%E8%B5%96%E7%9A%84%E5%89%8D%E7%AB%AF%E9%A1%B9%E7%9B%AE/zzyl-vue3/node_modules/vite-plugin-compression/dist/index.mjs";
function createCompression(env) {
  const { VITE_BUILD_COMPRESS } = env;
  const plugin = [];
  if (VITE_BUILD_COMPRESS) {
    const compressList = VITE_BUILD_COMPRESS.split(",");
    if (compressList.includes("gzip")) {
      plugin.push(
        compression({
          ext: ".gz",
          deleteOriginFile: false
        })
      );
    }
    if (compressList.includes("brotli")) {
      plugin.push(
        compression({
          ext: ".br",
          algorithm: "brotliCompress",
          deleteOriginFile: false
        })
      );
    }
  }
  return plugin;
}

// vite/plugins/setup-extend.js
import setupExtend from "file:///D:/zzylfile/%E4%B8%AD%E5%B7%9E%E5%85%BB%E8%80%81%E8%AF%BE%E7%A8%8B%E8%B5%84%E6%96%99/03.%20%E9%A1%B9%E7%9B%AE%E6%90%AD%E5%BB%BA%E3%80%81%E4%BB%8E0%E5%BC%80%E5%A7%8B%E7%94%A8%E8%8B%A5%E4%BE%9D/%E8%B5%84%E6%96%99/%E4%B8%8B%E8%BD%BD%E5%A5%BD%E4%BE%9D%E8%B5%96%E7%9A%84%E5%89%8D%E7%AB%AF%E9%A1%B9%E7%9B%AE/zzyl-vue3/node_modules/unplugin-vue-setup-extend-plus/dist/vite.js";
function createSetupExtend() {
  return setupExtend({});
}

// vite/plugins/index.js
function createVitePlugins(viteEnv, isBuild = false) {
  const vitePlugins = [vue()];
  vitePlugins.push(createAutoImport());
  vitePlugins.push(createSetupExtend());
  vitePlugins.push(createSvgIcon(isBuild));
  isBuild && vitePlugins.push(...createCompression(viteEnv));
  return vitePlugins;
}

// vite.config.js
var __vite_injected_original_dirname = "D:\\zzylfile\\\u4E2D\u5DDE\u517B\u8001\u8BFE\u7A0B\u8D44\u6599\\03. \u9879\u76EE\u642D\u5EFA\u3001\u4ECE0\u5F00\u59CB\u7528\u82E5\u4F9D\\\u8D44\u6599\\\u4E0B\u8F7D\u597D\u4F9D\u8D56\u7684\u524D\u7AEF\u9879\u76EE\\zzyl-vue3";
var vite_config_default = defineConfig(({ mode, command }) => {
  const env = loadEnv(mode, process.cwd());
  const { VITE_APP_ENV } = env;
  return {
    // 部署生产环境和开发环境下的URL。
    // 默认情况下，vite 会假设你的应用是被部署在一个域名的根路径上
    // 例如 https://www.zzyl.com/。如果应用被部署在一个子路径上，你就需要用这个选项指定这个子路径。例如，如果你的应用被部署在 https://www.zzyl.com/admin/，则设置 baseUrl 为 /admin/。
    base: VITE_APP_ENV === "production" ? "/" : "/",
    plugins: createVitePlugins(env, command === "build"),
    resolve: {
      // https://cn.vitejs.dev/config/#resolve-alias
      alias: {
        // 设置路径
        "~": path2.resolve(__vite_injected_original_dirname, "./"),
        // 设置别名
        "@": path2.resolve(__vite_injected_original_dirname, "./src")
      },
      // https://cn.vitejs.dev/config/#resolve-extensions
      extensions: [".mjs", ".js", ".ts", ".jsx", ".tsx", ".json", ".vue"]
    },
    // vite 相关配置
    server: {
      port: 8089,
      host: true,
      open: true,
      proxy: {
        // https://cn.vitejs.dev/config/#server-proxy
        "/dev-api": {
          target: "http://localhost:8080",
          changeOrigin: true,
          rewrite: (p) => p.replace(/^\/dev-api/, "")
        }
      }
    },
    //fix:error:stdin>:7356:1: warning: "@charset" must be the first rule in the file
    css: {
      postcss: {
        plugins: [
          {
            postcssPlugin: "internal:charset-removal",
            AtRule: {
              charset: (atRule) => {
                if (atRule.name === "charset") {
                  atRule.remove();
                }
              }
            }
          }
        ]
      }
    }
  };
});
export {
  vite_config_default as default
};
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsidml0ZS5jb25maWcuanMiLCAidml0ZS9wbHVnaW5zL2luZGV4LmpzIiwgInZpdGUvcGx1Z2lucy9hdXRvLWltcG9ydC5qcyIsICJ2aXRlL3BsdWdpbnMvc3ZnLWljb24uanMiLCAidml0ZS9wbHVnaW5zL2NvbXByZXNzaW9uLmpzIiwgInZpdGUvcGx1Z2lucy9zZXR1cC1leHRlbmQuanMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbImNvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9kaXJuYW1lID0gXCJEOlxcXFx6enlsZmlsZVxcXFxcdTRFMkRcdTVEREVcdTUxN0JcdTgwMDFcdThCRkVcdTdBMEJcdThENDRcdTY1OTlcXFxcMDMuIFx1OTg3OVx1NzZFRVx1NjQyRFx1NUVGQVx1MzAwMVx1NEVDRTBcdTVGMDBcdTU5Q0JcdTc1MjhcdTgyRTVcdTRGOURcXFxcXHU4RDQ0XHU2NTk5XFxcXFx1NEUwQlx1OEY3RFx1NTk3RFx1NEY5RFx1OEQ1Nlx1NzY4NFx1NTI0RFx1N0FFRlx1OTg3OVx1NzZFRVxcXFx6enlsLXZ1ZTNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkQ6XFxcXHp6eWxmaWxlXFxcXFx1NEUyRFx1NURERVx1NTE3Qlx1ODAwMVx1OEJGRVx1N0EwQlx1OEQ0NFx1NjU5OVxcXFwwMy4gXHU5ODc5XHU3NkVFXHU2NDJEXHU1RUZBXHUzMDAxXHU0RUNFMFx1NUYwMFx1NTlDQlx1NzUyOFx1ODJFNVx1NEY5RFxcXFxcdThENDRcdTY1OTlcXFxcXHU0RTBCXHU4RjdEXHU1OTdEXHU0RjlEXHU4RDU2XHU3Njg0XHU1MjREXHU3QUVGXHU5ODc5XHU3NkVFXFxcXHp6eWwtdnVlM1xcXFx2aXRlLmNvbmZpZy5qc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vRDovenp5bGZpbGUvJUU0JUI4JUFEJUU1JUI3JTlFJUU1JTg1JUJCJUU4JTgwJTgxJUU4JUFGJUJFJUU3JUE4JThCJUU4JUI1JTg0JUU2JTk2JTk5LzAzLiUyMCVFOSVBMSVCOSVFNyU5QiVBRSVFNiU5MCVBRCVFNSVCQiVCQSVFMyU4MCU4MSVFNCVCQiU4RTAlRTUlQkMlODAlRTUlQTclOEIlRTclOTQlQTglRTglOEIlQTUlRTQlQkUlOUQvJUU4JUI1JTg0JUU2JTk2JTk5LyVFNCVCOCU4QiVFOCVCRCVCRCVFNSVBNSVCRCVFNCVCRSU5RCVFOCVCNSU5NiVFNyU5QSU4NCVFNSU4OSU4RCVFNyVBQiVBRiVFOSVBMSVCOSVFNyU5QiVBRS96enlsLXZ1ZTMvdml0ZS5jb25maWcuanNcIjtpbXBvcnQgeyBkZWZpbmVDb25maWcsIGxvYWRFbnYgfSBmcm9tICd2aXRlJ1xyXG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJ1xyXG5pbXBvcnQgY3JlYXRlVml0ZVBsdWdpbnMgZnJvbSAnLi92aXRlL3BsdWdpbnMnXHJcblxyXG4vLyBodHRwczovL3ZpdGVqcy5kZXYvY29uZmlnL1xyXG5leHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcoKHsgbW9kZSwgY29tbWFuZCB9KSA9PiB7XHJcbiAgY29uc3QgZW52ID0gbG9hZEVudihtb2RlLCBwcm9jZXNzLmN3ZCgpKVxyXG4gIGNvbnN0IHsgVklURV9BUFBfRU5WIH0gPSBlbnZcclxuICByZXR1cm4ge1xyXG4gICAgLy8gXHU5MEU4XHU3RjcyXHU3NTFGXHU0RUE3XHU3M0FGXHU1ODgzXHU1NDhDXHU1RjAwXHU1M0QxXHU3M0FGXHU1ODgzXHU0RTBCXHU3Njg0VVJMXHUzMDAyXHJcbiAgICAvLyBcdTlFRDhcdThCQTRcdTYwQzVcdTUxQjVcdTRFMEJcdUZGMEN2aXRlIFx1NEYxQVx1NTA0N1x1OEJCRVx1NEY2MFx1NzY4NFx1NUU5NFx1NzUyOFx1NjYyRlx1ODhBQlx1OTBFOFx1N0Y3Mlx1NTcyOFx1NEUwMFx1NEUyQVx1NTdERlx1NTQwRFx1NzY4NFx1NjgzOVx1OERFRlx1NUY4NFx1NEUwQVxyXG4gICAgLy8gXHU0RjhCXHU1OTgyIGh0dHBzOi8vd3d3Lnp6eWwuY29tL1x1MzAwMlx1NTk4Mlx1Njc5Q1x1NUU5NFx1NzUyOFx1ODhBQlx1OTBFOFx1N0Y3Mlx1NTcyOFx1NEUwMFx1NEUyQVx1NUI1MFx1OERFRlx1NUY4NFx1NEUwQVx1RkYwQ1x1NEY2MFx1NUMzMVx1OTcwMFx1ODk4MVx1NzUyOFx1OEZEOVx1NEUyQVx1OTAwOVx1OTg3OVx1NjMwN1x1NUI5QVx1OEZEOVx1NEUyQVx1NUI1MFx1OERFRlx1NUY4NFx1MzAwMlx1NEY4Qlx1NTk4Mlx1RkYwQ1x1NTk4Mlx1Njc5Q1x1NEY2MFx1NzY4NFx1NUU5NFx1NzUyOFx1ODhBQlx1OTBFOFx1N0Y3Mlx1NTcyOCBodHRwczovL3d3dy56enlsLmNvbS9hZG1pbi9cdUZGMENcdTUyMTlcdThCQkVcdTdGNkUgYmFzZVVybCBcdTRFM0EgL2FkbWluL1x1MzAwMlxyXG4gICAgYmFzZTogVklURV9BUFBfRU5WID09PSAncHJvZHVjdGlvbicgPyAnLycgOiAnLycsXHJcbiAgICBwbHVnaW5zOiBjcmVhdGVWaXRlUGx1Z2lucyhlbnYsIGNvbW1hbmQgPT09ICdidWlsZCcpLFxyXG4gICAgcmVzb2x2ZToge1xyXG4gICAgICAvLyBodHRwczovL2NuLnZpdGVqcy5kZXYvY29uZmlnLyNyZXNvbHZlLWFsaWFzXHJcbiAgICAgIGFsaWFzOiB7XHJcbiAgICAgICAgLy8gXHU4QkJFXHU3RjZFXHU4REVGXHU1Rjg0XHJcbiAgICAgICAgJ34nOiBwYXRoLnJlc29sdmUoX19kaXJuYW1lLCAnLi8nKSxcclxuICAgICAgICAvLyBcdThCQkVcdTdGNkVcdTUyMkJcdTU0MERcclxuICAgICAgICAnQCc6IHBhdGgucmVzb2x2ZShfX2Rpcm5hbWUsICcuL3NyYycpXHJcbiAgICAgIH0sXHJcbiAgICAgIC8vIGh0dHBzOi8vY24udml0ZWpzLmRldi9jb25maWcvI3Jlc29sdmUtZXh0ZW5zaW9uc1xyXG4gICAgICBleHRlbnNpb25zOiBbJy5tanMnLCAnLmpzJywgJy50cycsICcuanN4JywgJy50c3gnLCAnLmpzb24nLCAnLnZ1ZSddXHJcbiAgICB9LFxyXG4gICAgLy8gdml0ZSBcdTc2RjhcdTUxNzNcdTkxNERcdTdGNkVcclxuICAgIHNlcnZlcjoge1xyXG4gICAgICBwb3J0OiA4MDg5LFxyXG4gICAgICBob3N0OiB0cnVlLFxyXG4gICAgICBvcGVuOiB0cnVlLFxyXG4gICAgICBwcm94eToge1xyXG4gICAgICAgIC8vIGh0dHBzOi8vY24udml0ZWpzLmRldi9jb25maWcvI3NlcnZlci1wcm94eVxyXG4gICAgICAgICcvZGV2LWFwaSc6IHtcclxuICAgICAgICAgIHRhcmdldDogJ2h0dHA6Ly9sb2NhbGhvc3Q6ODA4MCcsXHJcbiAgICAgICAgICBjaGFuZ2VPcmlnaW46IHRydWUsXHJcbiAgICAgICAgICByZXdyaXRlOiAocCkgPT4gcC5yZXBsYWNlKC9eXFwvZGV2LWFwaS8sICcnKVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfSxcclxuICAgIC8vZml4OmVycm9yOnN0ZGluPjo3MzU2OjE6IHdhcm5pbmc6IFwiQGNoYXJzZXRcIiBtdXN0IGJlIHRoZSBmaXJzdCBydWxlIGluIHRoZSBmaWxlXHJcbiAgICBjc3M6IHtcclxuICAgICAgcG9zdGNzczoge1xyXG4gICAgICAgIHBsdWdpbnM6IFtcclxuICAgICAgICAgIHtcclxuICAgICAgICAgICAgcG9zdGNzc1BsdWdpbjogJ2ludGVybmFsOmNoYXJzZXQtcmVtb3ZhbCcsXHJcbiAgICAgICAgICAgIEF0UnVsZToge1xyXG4gICAgICAgICAgICAgIGNoYXJzZXQ6IChhdFJ1bGUpID0+IHtcclxuICAgICAgICAgICAgICAgIGlmIChhdFJ1bGUubmFtZSA9PT0gJ2NoYXJzZXQnKSB7XHJcbiAgICAgICAgICAgICAgICAgIGF0UnVsZS5yZW1vdmUoKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICBdXHJcbiAgICAgIH1cclxuICAgIH1cclxuICB9XHJcbn0pXHJcbiIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiRDpcXFxcenp5bGZpbGVcXFxcXHU0RTJEXHU1RERFXHU1MTdCXHU4MDAxXHU4QkZFXHU3QTBCXHU4RDQ0XHU2NTk5XFxcXDAzLiBcdTk4NzlcdTc2RUVcdTY0MkRcdTVFRkFcdTMwMDFcdTRFQ0UwXHU1RjAwXHU1OUNCXHU3NTI4XHU4MkU1XHU0RjlEXFxcXFx1OEQ0NFx1NjU5OVxcXFxcdTRFMEJcdThGN0RcdTU5N0RcdTRGOURcdThENTZcdTc2ODRcdTUyNERcdTdBRUZcdTk4NzlcdTc2RUVcXFxcenp5bC12dWUzXFxcXHZpdGVcXFxccGx1Z2luc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiRDpcXFxcenp5bGZpbGVcXFxcXHU0RTJEXHU1RERFXHU1MTdCXHU4MDAxXHU4QkZFXHU3QTBCXHU4RDQ0XHU2NTk5XFxcXDAzLiBcdTk4NzlcdTc2RUVcdTY0MkRcdTVFRkFcdTMwMDFcdTRFQ0UwXHU1RjAwXHU1OUNCXHU3NTI4XHU4MkU1XHU0RjlEXFxcXFx1OEQ0NFx1NjU5OVxcXFxcdTRFMEJcdThGN0RcdTU5N0RcdTRGOURcdThENTZcdTc2ODRcdTUyNERcdTdBRUZcdTk4NzlcdTc2RUVcXFxcenp5bC12dWUzXFxcXHZpdGVcXFxccGx1Z2luc1xcXFxpbmRleC5qc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vRDovenp5bGZpbGUvJUU0JUI4JUFEJUU1JUI3JTlFJUU1JTg1JUJCJUU4JTgwJTgxJUU4JUFGJUJFJUU3JUE4JThCJUU4JUI1JTg0JUU2JTk2JTk5LzAzLiUyMCVFOSVBMSVCOSVFNyU5QiVBRSVFNiU5MCVBRCVFNSVCQiVCQSVFMyU4MCU4MSVFNCVCQiU4RTAlRTUlQkMlODAlRTUlQTclOEIlRTclOTQlQTglRTglOEIlQTUlRTQlQkUlOUQvJUU4JUI1JTg0JUU2JTk2JTk5LyVFNCVCOCU4QiVFOCVCRCVCRCVFNSVBNSVCRCVFNCVCRSU5RCVFOCVCNSU5NiVFNyU5QSU4NCVFNSU4OSU4RCVFNyVBQiVBRiVFOSVBMSVCOSVFNyU5QiVBRS96enlsLXZ1ZTMvdml0ZS9wbHVnaW5zL2luZGV4LmpzXCI7aW1wb3J0IHZ1ZSBmcm9tICdAdml0ZWpzL3BsdWdpbi12dWUnXHJcblxyXG5pbXBvcnQgY3JlYXRlQXV0b0ltcG9ydCBmcm9tICcuL2F1dG8taW1wb3J0J1xyXG5pbXBvcnQgY3JlYXRlU3ZnSWNvbiBmcm9tICcuL3N2Zy1pY29uJ1xyXG5pbXBvcnQgY3JlYXRlQ29tcHJlc3Npb24gZnJvbSAnLi9jb21wcmVzc2lvbidcclxuaW1wb3J0IGNyZWF0ZVNldHVwRXh0ZW5kIGZyb20gJy4vc2V0dXAtZXh0ZW5kJ1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlVml0ZVBsdWdpbnModml0ZUVudiwgaXNCdWlsZCA9IGZhbHNlKSB7XHJcbiAgICBjb25zdCB2aXRlUGx1Z2lucyA9IFt2dWUoKV1cclxuICAgIHZpdGVQbHVnaW5zLnB1c2goY3JlYXRlQXV0b0ltcG9ydCgpKVxyXG5cdHZpdGVQbHVnaW5zLnB1c2goY3JlYXRlU2V0dXBFeHRlbmQoKSlcclxuICAgIHZpdGVQbHVnaW5zLnB1c2goY3JlYXRlU3ZnSWNvbihpc0J1aWxkKSlcclxuXHRpc0J1aWxkICYmIHZpdGVQbHVnaW5zLnB1c2goLi4uY3JlYXRlQ29tcHJlc3Npb24odml0ZUVudikpXHJcbiAgICByZXR1cm4gdml0ZVBsdWdpbnNcclxufVxyXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIkQ6XFxcXHp6eWxmaWxlXFxcXFx1NEUyRFx1NURERVx1NTE3Qlx1ODAwMVx1OEJGRVx1N0EwQlx1OEQ0NFx1NjU5OVxcXFwwMy4gXHU5ODc5XHU3NkVFXHU2NDJEXHU1RUZBXHUzMDAxXHU0RUNFMFx1NUYwMFx1NTlDQlx1NzUyOFx1ODJFNVx1NEY5RFxcXFxcdThENDRcdTY1OTlcXFxcXHU0RTBCXHU4RjdEXHU1OTdEXHU0RjlEXHU4RDU2XHU3Njg0XHU1MjREXHU3QUVGXHU5ODc5XHU3NkVFXFxcXHp6eWwtdnVlM1xcXFx2aXRlXFxcXHBsdWdpbnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkQ6XFxcXHp6eWxmaWxlXFxcXFx1NEUyRFx1NURERVx1NTE3Qlx1ODAwMVx1OEJGRVx1N0EwQlx1OEQ0NFx1NjU5OVxcXFwwMy4gXHU5ODc5XHU3NkVFXHU2NDJEXHU1RUZBXHUzMDAxXHU0RUNFMFx1NUYwMFx1NTlDQlx1NzUyOFx1ODJFNVx1NEY5RFxcXFxcdThENDRcdTY1OTlcXFxcXHU0RTBCXHU4RjdEXHU1OTdEXHU0RjlEXHU4RDU2XHU3Njg0XHU1MjREXHU3QUVGXHU5ODc5XHU3NkVFXFxcXHp6eWwtdnVlM1xcXFx2aXRlXFxcXHBsdWdpbnNcXFxcYXV0by1pbXBvcnQuanNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0Q6L3p6eWxmaWxlLyVFNCVCOCVBRCVFNSVCNyU5RSVFNSU4NSVCQiVFOCU4MCU4MSVFOCVBRiVCRSVFNyVBOCU4QiVFOCVCNSU4NCVFNiU5NiU5OS8wMy4lMjAlRTklQTElQjklRTclOUIlQUUlRTYlOTAlQUQlRTUlQkIlQkElRTMlODAlODElRTQlQkIlOEUwJUU1JUJDJTgwJUU1JUE3JThCJUU3JTk0JUE4JUU4JThCJUE1JUU0JUJFJTlELyVFOCVCNSU4NCVFNiU5NiU5OS8lRTQlQjglOEIlRTglQkQlQkQlRTUlQTUlQkQlRTQlQkUlOUQlRTglQjUlOTYlRTclOUElODQlRTUlODklOEQlRTclQUIlQUYlRTklQTElQjklRTclOUIlQUUvenp5bC12dWUzL3ZpdGUvcGx1Z2lucy9hdXRvLWltcG9ydC5qc1wiO2ltcG9ydCBhdXRvSW1wb3J0IGZyb20gJ3VucGx1Z2luLWF1dG8taW1wb3J0L3ZpdGUnXHJcblxyXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBjcmVhdGVBdXRvSW1wb3J0KCkge1xyXG4gICAgcmV0dXJuIGF1dG9JbXBvcnQoe1xyXG4gICAgICAgIGltcG9ydHM6IFtcclxuICAgICAgICAgICAgJ3Z1ZScsXHJcbiAgICAgICAgICAgICd2dWUtcm91dGVyJyxcclxuICAgICAgICAgICAgJ3BpbmlhJ1xyXG4gICAgICAgIF0sXHJcbiAgICAgICAgZHRzOiBmYWxzZVxyXG4gICAgfSlcclxufVxyXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIkQ6XFxcXHp6eWxmaWxlXFxcXFx1NEUyRFx1NURERVx1NTE3Qlx1ODAwMVx1OEJGRVx1N0EwQlx1OEQ0NFx1NjU5OVxcXFwwMy4gXHU5ODc5XHU3NkVFXHU2NDJEXHU1RUZBXHUzMDAxXHU0RUNFMFx1NUYwMFx1NTlDQlx1NzUyOFx1ODJFNVx1NEY5RFxcXFxcdThENDRcdTY1OTlcXFxcXHU0RTBCXHU4RjdEXHU1OTdEXHU0RjlEXHU4RDU2XHU3Njg0XHU1MjREXHU3QUVGXHU5ODc5XHU3NkVFXFxcXHp6eWwtdnVlM1xcXFx2aXRlXFxcXHBsdWdpbnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkQ6XFxcXHp6eWxmaWxlXFxcXFx1NEUyRFx1NURERVx1NTE3Qlx1ODAwMVx1OEJGRVx1N0EwQlx1OEQ0NFx1NjU5OVxcXFwwMy4gXHU5ODc5XHU3NkVFXHU2NDJEXHU1RUZBXHUzMDAxXHU0RUNFMFx1NUYwMFx1NTlDQlx1NzUyOFx1ODJFNVx1NEY5RFxcXFxcdThENDRcdTY1OTlcXFxcXHU0RTBCXHU4RjdEXHU1OTdEXHU0RjlEXHU4RDU2XHU3Njg0XHU1MjREXHU3QUVGXHU5ODc5XHU3NkVFXFxcXHp6eWwtdnVlM1xcXFx2aXRlXFxcXHBsdWdpbnNcXFxcc3ZnLWljb24uanNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfaW1wb3J0X21ldGFfdXJsID0gXCJmaWxlOi8vL0Q6L3p6eWxmaWxlLyVFNCVCOCVBRCVFNSVCNyU5RSVFNSU4NSVCQiVFOCU4MCU4MSVFOCVBRiVCRSVFNyVBOCU4QiVFOCVCNSU4NCVFNiU5NiU5OS8wMy4lMjAlRTklQTElQjklRTclOUIlQUUlRTYlOTAlQUQlRTUlQkIlQkElRTMlODAlODElRTQlQkIlOEUwJUU1JUJDJTgwJUU1JUE3JThCJUU3JTk0JUE4JUU4JThCJUE1JUU0JUJFJTlELyVFOCVCNSU4NCVFNiU5NiU5OS8lRTQlQjglOEIlRTglQkQlQkQlRTUlQTUlQkQlRTQlQkUlOUQlRTglQjUlOTYlRTclOUElODQlRTUlODklOEQlRTclQUIlQUYlRTklQTElQjklRTclOUIlQUUvenp5bC12dWUzL3ZpdGUvcGx1Z2lucy9zdmctaWNvbi5qc1wiO2ltcG9ydCB7IGNyZWF0ZVN2Z0ljb25zUGx1Z2luIH0gZnJvbSAndml0ZS1wbHVnaW4tc3ZnLWljb25zJ1xyXG5pbXBvcnQgcGF0aCBmcm9tICdwYXRoJ1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlU3ZnSWNvbihpc0J1aWxkKSB7XHJcbiAgICByZXR1cm4gY3JlYXRlU3ZnSWNvbnNQbHVnaW4oe1xyXG5cdFx0aWNvbkRpcnM6IFtwYXRoLnJlc29sdmUocHJvY2Vzcy5jd2QoKSwgJ3NyYy9hc3NldHMvaWNvbnMvc3ZnJyldLFxyXG4gICAgICAgIHN5bWJvbElkOiAnaWNvbi1bZGlyXS1bbmFtZV0nLFxyXG4gICAgICAgIHN2Z29PcHRpb25zOiBpc0J1aWxkXHJcbiAgICB9KVxyXG59XHJcbiIsICJjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZGlybmFtZSA9IFwiRDpcXFxcenp5bGZpbGVcXFxcXHU0RTJEXHU1RERFXHU1MTdCXHU4MDAxXHU4QkZFXHU3QTBCXHU4RDQ0XHU2NTk5XFxcXDAzLiBcdTk4NzlcdTc2RUVcdTY0MkRcdTVFRkFcdTMwMDFcdTRFQ0UwXHU1RjAwXHU1OUNCXHU3NTI4XHU4MkU1XHU0RjlEXFxcXFx1OEQ0NFx1NjU5OVxcXFxcdTRFMEJcdThGN0RcdTU5N0RcdTRGOURcdThENTZcdTc2ODRcdTUyNERcdTdBRUZcdTk4NzlcdTc2RUVcXFxcenp5bC12dWUzXFxcXHZpdGVcXFxccGx1Z2luc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9maWxlbmFtZSA9IFwiRDpcXFxcenp5bGZpbGVcXFxcXHU0RTJEXHU1RERFXHU1MTdCXHU4MDAxXHU4QkZFXHU3QTBCXHU4RDQ0XHU2NTk5XFxcXDAzLiBcdTk4NzlcdTc2RUVcdTY0MkRcdTVFRkFcdTMwMDFcdTRFQ0UwXHU1RjAwXHU1OUNCXHU3NTI4XHU4MkU1XHU0RjlEXFxcXFx1OEQ0NFx1NjU5OVxcXFxcdTRFMEJcdThGN0RcdTU5N0RcdTRGOURcdThENTZcdTc2ODRcdTUyNERcdTdBRUZcdTk4NzlcdTc2RUVcXFxcenp5bC12dWUzXFxcXHZpdGVcXFxccGx1Z2luc1xcXFxjb21wcmVzc2lvbi5qc1wiO2NvbnN0IF9fdml0ZV9pbmplY3RlZF9vcmlnaW5hbF9pbXBvcnRfbWV0YV91cmwgPSBcImZpbGU6Ly8vRDovenp5bGZpbGUvJUU0JUI4JUFEJUU1JUI3JTlFJUU1JTg1JUJCJUU4JTgwJTgxJUU4JUFGJUJFJUU3JUE4JThCJUU4JUI1JTg0JUU2JTk2JTk5LzAzLiUyMCVFOSVBMSVCOSVFNyU5QiVBRSVFNiU5MCVBRCVFNSVCQiVCQSVFMyU4MCU4MSVFNCVCQiU4RTAlRTUlQkMlODAlRTUlQTclOEIlRTclOTQlQTglRTglOEIlQTUlRTQlQkUlOUQvJUU4JUI1JTg0JUU2JTk2JTk5LyVFNCVCOCU4QiVFOCVCRCVCRCVFNSVBNSVCRCVFNCVCRSU5RCVFOCVCNSU5NiVFNyU5QSU4NCVFNSU4OSU4RCVFNyVBQiVBRiVFOSVBMSVCOSVFNyU5QiVBRS96enlsLXZ1ZTMvdml0ZS9wbHVnaW5zL2NvbXByZXNzaW9uLmpzXCI7aW1wb3J0IGNvbXByZXNzaW9uIGZyb20gJ3ZpdGUtcGx1Z2luLWNvbXByZXNzaW9uJ1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlQ29tcHJlc3Npb24oZW52KSB7XHJcbiAgICBjb25zdCB7IFZJVEVfQlVJTERfQ09NUFJFU1MgfSA9IGVudlxyXG4gICAgY29uc3QgcGx1Z2luID0gW11cclxuICAgIGlmIChWSVRFX0JVSUxEX0NPTVBSRVNTKSB7XHJcbiAgICAgICAgY29uc3QgY29tcHJlc3NMaXN0ID0gVklURV9CVUlMRF9DT01QUkVTUy5zcGxpdCgnLCcpXHJcbiAgICAgICAgaWYgKGNvbXByZXNzTGlzdC5pbmNsdWRlcygnZ3ppcCcpKSB7XHJcbiAgICAgICAgICAgIC8vIGh0dHA6Ly9kb2Muenp5bC5jb20vcnVveWktdnVlL290aGVyL2ZhcS5odG1sI1x1NEY3Rlx1NzUyOGd6aXBcdTg5RTNcdTUzOEJcdTdGMjlcdTk3NTlcdTYwMDFcdTY1ODdcdTRFRjZcclxuICAgICAgICAgICAgcGx1Z2luLnB1c2goXHJcbiAgICAgICAgICAgICAgICBjb21wcmVzc2lvbih7XHJcbiAgICAgICAgICAgICAgICAgICAgZXh0OiAnLmd6JyxcclxuICAgICAgICAgICAgICAgICAgICBkZWxldGVPcmlnaW5GaWxlOiBmYWxzZVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAoY29tcHJlc3NMaXN0LmluY2x1ZGVzKCdicm90bGknKSkge1xyXG4gICAgICAgICAgICBwbHVnaW4ucHVzaChcclxuICAgICAgICAgICAgICAgIGNvbXByZXNzaW9uKHtcclxuICAgICAgICAgICAgICAgICAgICBleHQ6ICcuYnInLFxyXG4gICAgICAgICAgICAgICAgICAgIGFsZ29yaXRobTogJ2Jyb3RsaUNvbXByZXNzJyxcclxuICAgICAgICAgICAgICAgICAgICBkZWxldGVPcmlnaW5GaWxlOiBmYWxzZVxyXG4gICAgICAgICAgICAgICAgfSlcclxuICAgICAgICAgICAgKVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBwbHVnaW5cclxufVxyXG4iLCAiY29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2Rpcm5hbWUgPSBcIkQ6XFxcXHp6eWxmaWxlXFxcXFx1NEUyRFx1NURERVx1NTE3Qlx1ODAwMVx1OEJGRVx1N0EwQlx1OEQ0NFx1NjU5OVxcXFwwMy4gXHU5ODc5XHU3NkVFXHU2NDJEXHU1RUZBXHUzMDAxXHU0RUNFMFx1NUYwMFx1NTlDQlx1NzUyOFx1ODJFNVx1NEY5RFxcXFxcdThENDRcdTY1OTlcXFxcXHU0RTBCXHU4RjdEXHU1OTdEXHU0RjlEXHU4RDU2XHU3Njg0XHU1MjREXHU3QUVGXHU5ODc5XHU3NkVFXFxcXHp6eWwtdnVlM1xcXFx2aXRlXFxcXHBsdWdpbnNcIjtjb25zdCBfX3ZpdGVfaW5qZWN0ZWRfb3JpZ2luYWxfZmlsZW5hbWUgPSBcIkQ6XFxcXHp6eWxmaWxlXFxcXFx1NEUyRFx1NURERVx1NTE3Qlx1ODAwMVx1OEJGRVx1N0EwQlx1OEQ0NFx1NjU5OVxcXFwwMy4gXHU5ODc5XHU3NkVFXHU2NDJEXHU1RUZBXHUzMDAxXHU0RUNFMFx1NUYwMFx1NTlDQlx1NzUyOFx1ODJFNVx1NEY5RFxcXFxcdThENDRcdTY1OTlcXFxcXHU0RTBCXHU4RjdEXHU1OTdEXHU0RjlEXHU4RDU2XHU3Njg0XHU1MjREXHU3QUVGXHU5ODc5XHU3NkVFXFxcXHp6eWwtdnVlM1xcXFx2aXRlXFxcXHBsdWdpbnNcXFxcc2V0dXAtZXh0ZW5kLmpzXCI7Y29uc3QgX192aXRlX2luamVjdGVkX29yaWdpbmFsX2ltcG9ydF9tZXRhX3VybCA9IFwiZmlsZTovLy9EOi96enlsZmlsZS8lRTQlQjglQUQlRTUlQjclOUUlRTUlODUlQkIlRTglODAlODElRTglQUYlQkUlRTclQTglOEIlRTglQjUlODQlRTYlOTYlOTkvMDMuJTIwJUU5JUExJUI5JUU3JTlCJUFFJUU2JTkwJUFEJUU1JUJCJUJBJUUzJTgwJTgxJUU0JUJCJThFMCVFNSVCQyU4MCVFNSVBNyU4QiVFNyU5NCVBOCVFOCU4QiVBNSVFNCVCRSU5RC8lRTglQjUlODQlRTYlOTYlOTkvJUU0JUI4JThCJUU4JUJEJUJEJUU1JUE1JUJEJUU0JUJFJTlEJUU4JUI1JTk2JUU3JTlBJTg0JUU1JTg5JThEJUU3JUFCJUFGJUU5JUExJUI5JUU3JTlCJUFFL3p6eWwtdnVlMy92aXRlL3BsdWdpbnMvc2V0dXAtZXh0ZW5kLmpzXCI7aW1wb3J0IHNldHVwRXh0ZW5kIGZyb20gJ3VucGx1Z2luLXZ1ZS1zZXR1cC1leHRlbmQtcGx1cy92aXRlJ1xyXG5cclxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gY3JlYXRlU2V0dXBFeHRlbmQoKSB7XHJcbiAgICByZXR1cm4gc2V0dXBFeHRlbmQoe30pXHJcbn1cclxuIl0sCiAgIm1hcHBpbmdzIjogIjtBQUFpbkIsU0FBUyxjQUFjLGVBQWU7QUFDdnBCLE9BQU9BLFdBQVU7OztBQ0QrbkIsT0FBTyxTQUFTOzs7QUNBSixPQUFPLGdCQUFnQjtBQUVwcUIsU0FBUixtQkFBb0M7QUFDdkMsU0FBTyxXQUFXO0FBQUEsSUFDZCxTQUFTO0FBQUEsTUFDTDtBQUFBLE1BQ0E7QUFBQSxNQUNBO0FBQUEsSUFDSjtBQUFBLElBQ0EsS0FBSztBQUFBLEVBQ1QsQ0FBQztBQUNMOzs7QUNYc3BCLFNBQVMsNEJBQTRCO0FBQzNyQixPQUFPLFVBQVU7QUFFRixTQUFSLGNBQStCLFNBQVM7QUFDM0MsU0FBTyxxQkFBcUI7QUFBQSxJQUM5QixVQUFVLENBQUMsS0FBSyxRQUFRLFFBQVEsSUFBSSxHQUFHLHNCQUFzQixDQUFDO0FBQUEsSUFDeEQsVUFBVTtBQUFBLElBQ1YsYUFBYTtBQUFBLEVBQ2pCLENBQUM7QUFDTDs7O0FDVDRwQixPQUFPLGlCQUFpQjtBQUVycUIsU0FBUixrQkFBbUMsS0FBSztBQUMzQyxRQUFNLEVBQUUsb0JBQW9CLElBQUk7QUFDaEMsUUFBTSxTQUFTLENBQUM7QUFDaEIsTUFBSSxxQkFBcUI7QUFDckIsVUFBTSxlQUFlLG9CQUFvQixNQUFNLEdBQUc7QUFDbEQsUUFBSSxhQUFhLFNBQVMsTUFBTSxHQUFHO0FBRS9CLGFBQU87QUFBQSxRQUNILFlBQVk7QUFBQSxVQUNSLEtBQUs7QUFBQSxVQUNMLGtCQUFrQjtBQUFBLFFBQ3RCLENBQUM7QUFBQSxNQUNMO0FBQUEsSUFDSjtBQUNBLFFBQUksYUFBYSxTQUFTLFFBQVEsR0FBRztBQUNqQyxhQUFPO0FBQUEsUUFDSCxZQUFZO0FBQUEsVUFDUixLQUFLO0FBQUEsVUFDTCxXQUFXO0FBQUEsVUFDWCxrQkFBa0I7QUFBQSxRQUN0QixDQUFDO0FBQUEsTUFDTDtBQUFBLElBQ0o7QUFBQSxFQUNKO0FBQ0EsU0FBTztBQUNYOzs7QUMzQjhwQixPQUFPLGlCQUFpQjtBQUV2cUIsU0FBUixvQkFBcUM7QUFDeEMsU0FBTyxZQUFZLENBQUMsQ0FBQztBQUN6Qjs7O0FKR2UsU0FBUixrQkFBbUMsU0FBUyxVQUFVLE9BQU87QUFDaEUsUUFBTSxjQUFjLENBQUMsSUFBSSxDQUFDO0FBQzFCLGNBQVksS0FBSyxpQkFBaUIsQ0FBQztBQUN0QyxjQUFZLEtBQUssa0JBQWtCLENBQUM7QUFDakMsY0FBWSxLQUFLLGNBQWMsT0FBTyxDQUFDO0FBQzFDLGFBQVcsWUFBWSxLQUFLLEdBQUcsa0JBQWtCLE9BQU8sQ0FBQztBQUN0RCxTQUFPO0FBQ1g7OztBRGRBLElBQU0sbUNBQW1DO0FBS3pDLElBQU8sc0JBQVEsYUFBYSxDQUFDLEVBQUUsTUFBTSxRQUFRLE1BQU07QUFDakQsUUFBTSxNQUFNLFFBQVEsTUFBTSxRQUFRLElBQUksQ0FBQztBQUN2QyxRQUFNLEVBQUUsYUFBYSxJQUFJO0FBQ3pCLFNBQU87QUFBQTtBQUFBO0FBQUE7QUFBQSxJQUlMLE1BQU0saUJBQWlCLGVBQWUsTUFBTTtBQUFBLElBQzVDLFNBQVMsa0JBQWtCLEtBQUssWUFBWSxPQUFPO0FBQUEsSUFDbkQsU0FBUztBQUFBO0FBQUEsTUFFUCxPQUFPO0FBQUE7QUFBQSxRQUVMLEtBQUtDLE1BQUssUUFBUSxrQ0FBVyxJQUFJO0FBQUE7QUFBQSxRQUVqQyxLQUFLQSxNQUFLLFFBQVEsa0NBQVcsT0FBTztBQUFBLE1BQ3RDO0FBQUE7QUFBQSxNQUVBLFlBQVksQ0FBQyxRQUFRLE9BQU8sT0FBTyxRQUFRLFFBQVEsU0FBUyxNQUFNO0FBQUEsSUFDcEU7QUFBQTtBQUFBLElBRUEsUUFBUTtBQUFBLE1BQ04sTUFBTTtBQUFBLE1BQ04sTUFBTTtBQUFBLE1BQ04sTUFBTTtBQUFBLE1BQ04sT0FBTztBQUFBO0FBQUEsUUFFTCxZQUFZO0FBQUEsVUFDVixRQUFRO0FBQUEsVUFDUixjQUFjO0FBQUEsVUFDZCxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsY0FBYyxFQUFFO0FBQUEsUUFDNUM7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUFBO0FBQUEsSUFFQSxLQUFLO0FBQUEsTUFDSCxTQUFTO0FBQUEsUUFDUCxTQUFTO0FBQUEsVUFDUDtBQUFBLFlBQ0UsZUFBZTtBQUFBLFlBQ2YsUUFBUTtBQUFBLGNBQ04sU0FBUyxDQUFDLFdBQVc7QUFDbkIsb0JBQUksT0FBTyxTQUFTLFdBQVc7QUFDN0IseUJBQU8sT0FBTztBQUFBLGdCQUNoQjtBQUFBLGNBQ0Y7QUFBQSxZQUNGO0FBQUEsVUFDRjtBQUFBLFFBQ0Y7QUFBQSxNQUNGO0FBQUEsSUFDRjtBQUFBLEVBQ0Y7QUFDRixDQUFDOyIsCiAgIm5hbWVzIjogWyJwYXRoIiwgInBhdGgiXQp9Cg==
